Symmetrical Paint! 
Now, Even Doodling Is Beautiful!
by Tomas J. Nally
Introduction
Symmetrical Paint is a small Liberty BASIC application that allows you to quickly paint interesting, multi-colored, symmetrical designs using your mouse pointer. With Symmetrical Paint, even doodling is beautiful! To see the types of designs of which Symmetrical Paint is capable, see the reduced-size images shown below.






Setting Up Symmetrical Paint

SP Icon
The Symmetrical Paint program can be found in the archive SymPaint.zip within the larger archive for this newsletter, nl118.zip. After you've downloaded SymPaint.zip to your hard drive, unzip all the files to a new folder.
The installation package consists of only 10 files. Seven of them are bitmap images pre-made with symmetrical paint. The other three files consist of the source code (SymPaint.bas), the tokenized version (SymPaint.tkn), and an icon file for the application (SP.ico) in case you would like to make a standalone version of the program.
To run Symmetrical Paint, run either the BASIC source file or the tokenized file from within Liberty BASIC. Symmetrical Paint runs equally well within LB3 and LB4. It has not been tested with LB2.

Screen Shot of Symmetrical Paint
How to Paint With Symmetrical Paint
To begin painting with Symmetrical Paint, follow the simple steps provided below. Refer as needed to the screenshot shown on the right.
- Move your mouse pointer to the color selection palatte of the Symmetrical Paint screen. Click one of the 16 painting colors provided. The color selected will appear in the top-most rectangle of the color selection palatte.
- Select a brush size from the brush size palatte. This is the palatte showing the four dots of different sizes. To select a brush size, click one of the dots. The brush size selected will appear in the top-most rectangle of the palatte.
- Next, click on one of the eight buttons to select a "Symmetry Type". My favorite is 8-Way symmetry, so start with that one.
- Move your mouse pointer to the "canvas". The canvas is the large, white graphic box which dominates the right-hand side of the Symmetrical Paint screen.
- Left-click once with your mouse, allowing the left-mouse button to return to the up position. This puts the pen down. Now, move your mouse freely around the canvase, but slowly at first. Watch how the program will create mirror images of your painting strokes!
- With your mouse, right-click once to lift the pen up and stop drawing. Now, you may select other colors, other brush sizes, or other symmetry types as needed.
Symmetry Types
Symmetrical Paint offers eight different types of symmetry. How is it that symmetry can be of different types? Well, just to identify a few, consider how symmetry about a vertical line might be different from symmetry about a horizontal line. Symmetrical Paint offers both of those types. In addition, Symmetrical Paint offers symmetry about diagonal lines, about horizontal and vertical lines simultaneously, and about other combinations of lines.
To see the results produced by each symmetry type, try them! Select one type and paint for a few moments. Then, erase it and select a new type. Within minutes, the artist will clearly see what each symmetry type produces.
Also, the program allows the painter to paint without the benefit of symmetry. Select the symmetry type button with the "None" label.
Other Features
Here are a few more features of Symmetrical Paint:
- More Brush Sizes. The brush size palatte only offers four brush sizes. However, in the Options menu, the painter can select from nine different brush sizes. I like to paint using a brush with a dot radius of 2 pixels.
- Varied Background Colors. Also under the Options menu, the painter can choose "Select background color...". This will call up the well-known color dialog box so the artist can begin painting on a canvas holding the background color of her choosing. Selecting a new background color will erase the current contents of the canvas. So, the artist is asked to confirm the background color change.
- Loading and Saving Bitmap Images. Symmetrical Paint uses Liberty BASIC's BMPSAVE command to save the painter's artistic work to disk in bitmap format. Use the File menu to Open, Save and Save as... bitmap files. These commands work the same way as other Windows applications.
- Help Window. Symmetrical Paint has a single Help screen to provide the painter with information about each of the controls on the main Symmetrical Paint window. The Help screen contains a miniature version of the main window with "clickable" regions offering help text. Click on any control in the miniature window to read help information about that control.
- Cool "About" Screen. Symmetrical Paint has a cool About... screen which is its own symmetrical painting mini-application!
- Screen Restoration. At various times during a painting session, all or parts of the canvas or tool palettes may become obscured. This can happen when the application is minimized, or when other dialog boxes temporarily appear in front of the main window. To restore the current contents of the screen, simply press the "Restore" button located under the Symmetry Type buttons.
Known Problem
This is the only known problem with Symmetrical Paint that I have discovered so far:
- At startup, the default painting color is black. However, the BACKCOLOR of the painted dots at startup is white, for reasons that have escaped me as developer. To correct this problem, simply click on the BLACK color in the color palette before you begin painting.
License
Symmetrical Paint is copyright Tomas J. Nally. Additionally, Symmetrical Paint is released as open source.